8c6625
@@ -24,6 +24,7 @@
 
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.api.FieldSchema;
+import org.apache.hadoop.hive.ql.exec.FetchTask;
 import org.apache.hadoop.hive.ql.exec.Task;
 import org.apache.hadoop.hive.ql.exec.TaskFactory;
 import org.apache.hadoop.hive.ql.plan.ExplainWork;
@@ -66,10 +67,15 @@
public void analyzeInternal(ASTNode ast) throws SemanticException {
 
     ctx.setResFile(ctx.getLocalTmpPath());
     List<Task<? extends Serializable>> tasks = sem.getRootTasks();
-    Task<? extends Serializable> fetchTask = sem.getFetchTask();
     if (tasks == null) {
       tasks = Collections.emptyList();
     }
+    
+    FetchTask fetchTask = sem.getFetchTask();
+    if (fetchTask != null) {
+      // Initialize fetch work such that operator tree will be constructed.
+      fetchTask.getWork().initializeForFetch();
+    }
 
     ParseContext pCtx = null;
     if (sem instanceof SemanticAnalyzer) {
